package com.ruoyi.business.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 合同台账对象 ac_contract_info
 *
 * @author ruoyi
 * @date 2025-02-18
 */
public class AcContractInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 合同库id */
    private Long contractId;

    /** 合同编号 */
    @Excel(name = "合同编号")
    private String contractCode;

    /** 合同类型 */
    @Excel(name = "合同类型")
    private Long contractType;

    /** 关联资产id */
    @Excel(name = "关联资产id")
    private Long contractAssetId;


    @Excel(name = "关联资产code")
    private String contractAssetCode;


    /** 关联资产名 */
    @Excel(name = "关联资产名")
    private String contractAssetName;

    /** 承租客户id */
    @Excel(name = "承租客户id")
    private Long contractCustomerId;

    /** 承租客户名称 */
    @Excel(name = "承租客户名称")
    private String contractCustomerName;

    /** 合同签订日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "合同签订日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date contractSigningDate;

    /** 合同租赁开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "合同租赁开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date contractStartDate;

    /** 合同租赁截止时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "合同租赁截止时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date contractEndDate;

    /** 合同租赁租金 */
    @Excel(name = "合同租赁租金")
    private BigDecimal contractRent;

    /** 合同租赁支付类型 */
    @Excel(name = "合同租赁支付类型")
    private Long contractPaymentType;

    /** 合同租赁押金 */
    @Excel(name = "合同租赁押金")
    private BigDecimal contractCashPledge;

    /** 合同备注 */
    @Excel(name = "合同备注")
    private String contractRemark;

    /** 合同文件 */
    @Excel(name = "合同文件")
    private String contractUrl;

    /** 合同状态（0：在租1：到期2：出售） */
    @Excel(name = "合同状态", readConverterExp = "0=：在租1：到期2：出售")
    private String contractStatus;

    /** 合同入库时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "合同入库时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date contractDate;

    /** 合同删除标识（0：正常1：删除） */
    @Excel(name = "合同删除标识", readConverterExp = "0=：正常1：删除")
    private Integer contractIsDelete;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 部门ID */
    @Excel(name = "部门ID")
    private Long deptId;

    @Excel(name = "负责人ID")
    private Long managerId;


    private String customerCode;
    private String customerLinkman;
    private String customerPhone1;
    private String leaseStatus;
    private String userName;
    private String nickName;

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public Long getManagerId() {
        return managerId;
    }

    public void setManagerId(Long managerId) {
        this.managerId = managerId;
    }

    public String getCustomerCode() {
        return customerCode;
    }

    public void setCustomerCode(String customerCode) {
        this.customerCode = customerCode;
    }

    public String getCustomerLinkman() {
        return customerLinkman;
    }

    public void setCustomerLinkman(String customerLinkman) {
        this.customerLinkman = customerLinkman;
    }

    public String getCustomerPhone1() {
        return customerPhone1;
    }

    public void setCustomerPhone1(String customerPhone1) {
        this.customerPhone1 = customerPhone1;
    }

    public String getLeaseStatus() {
        return leaseStatus;
    }

    public void setLeaseStatus(String leaseStatus) {
        this.leaseStatus = leaseStatus;
    }

    public String getContractAssetCode() {
        return contractAssetCode;
    }

    public void setContractAssetCode(String contractAssetCode) {
        this.contractAssetCode = contractAssetCode;
    }

    public void setContractId(Long contractId)
    {
        this.contractId = contractId;
    }

    public Long getContractId()
    {
        return contractId;
    }
    public void setContractCode(String contractCode)
    {
        this.contractCode = contractCode;
    }

    public String getContractCode()
    {
        return contractCode;
    }
    public void setContractType(Long contractType)
    {
        this.contractType = contractType;
    }

    public Long getContractType()
    {
        return contractType;
    }
    public void setContractAssetId(Long contractAssetId)
    {
        this.contractAssetId = contractAssetId;
    }

    public Long getContractAssetId()
    {
        return contractAssetId;
    }
    public void setContractAssetName(String contractAssetName)
    {
        this.contractAssetName = contractAssetName;
    }

    public String getContractAssetName()
    {
        return contractAssetName;
    }
    public void setContractCustomerId(Long contractCustomerId)
    {
        this.contractCustomerId = contractCustomerId;
    }

    public Long getContractCustomerId()
    {
        return contractCustomerId;
    }
    public void setContractCustomerName(String contractCustomerName)
    {
        this.contractCustomerName = contractCustomerName;
    }

    public String getContractCustomerName()
    {
        return contractCustomerName;
    }
    public void setContractSigningDate(Date contractSigningDate)
    {
        this.contractSigningDate = contractSigningDate;
    }

    public Date getContractSigningDate()
    {
        return contractSigningDate;
    }
    public void setContractStartDate(Date contractStartDate)
    {
        this.contractStartDate = contractStartDate;
    }

    public Date getContractStartDate()
    {
        return contractStartDate;
    }
    public void setContractEndDate(Date contractEndDate)
    {
        this.contractEndDate = contractEndDate;
    }

    public Date getContractEndDate()
    {
        return contractEndDate;
    }
    public void setContractRent(BigDecimal contractRent)
    {
        this.contractRent = contractRent;
    }

    public BigDecimal getContractRent()
    {
        return contractRent;
    }
    public void setContractPaymentType(Long contractPaymentType)
    {
        this.contractPaymentType = contractPaymentType;
    }

    public Long getContractPaymentType()
    {
        return contractPaymentType;
    }
    public void setContractCashPledge(BigDecimal contractCashPledge)
    {
        this.contractCashPledge = contractCashPledge;
    }

    public BigDecimal getContractCashPledge()
    {
        return contractCashPledge;
    }
    public void setContractRemark(String contractRemark)
    {
        this.contractRemark = contractRemark;
    }

    public String getContractRemark()
    {
        return contractRemark;
    }
    public void setContractUrl(String contractUrl)
    {
        this.contractUrl = contractUrl;
    }

    public String getContractUrl()
    {
        return contractUrl;
    }
    public void setContractStatus(String contractStatus)
    {
        this.contractStatus = contractStatus;
    }

    public String getContractStatus()
    {
        return contractStatus;
    }
    public void setContractDate(Date contractDate)
    {
        this.contractDate = contractDate;
    }

    public Date getContractDate()
    {
        return contractDate;
    }
    public void setContractIsDelete(Integer contractIsDelete)
    {
        this.contractIsDelete = contractIsDelete;
    }

    public Integer getContractIsDelete()
    {
        return contractIsDelete;
    }
    public void setDelFlag(String delFlag)
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag()
    {
        return delFlag;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("contractId", getContractId())
            .append("contractCode", getContractCode())
            .append("contractType", getContractType())
            .append("contractAssetId", getContractAssetId())
            .append("contractAssetName", getContractAssetName())
            .append("contractCustomerId", getContractCustomerId())
            .append("contractCustomerName", getContractCustomerName())
            .append("contractSigningDate", getContractSigningDate())
            .append("contractStartDate", getContractStartDate())
            .append("contractEndDate", getContractEndDate())
            .append("contractRent", getContractRent())
            .append("contractPaymentType", getContractPaymentType())
            .append("contractCashPledge", getContractCashPledge())
            .append("contractRemark", getContractRemark())
            .append("contractUrl", getContractUrl())
            .append("contractStatus", getContractStatus())
            .append("contractDate", getContractDate())
            .append("contractIsDelete", getContractIsDelete())
            .append("delFlag", getDelFlag())
            .append("deptId", getDeptId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
